<?php

/**
 * @author HungNQ
 */
class ExpenseController extends RController
{

    public function init()
    {
        parent::init();
        $baseUrl = Yii::app()->baseUrl;
        $cs = Yii::app()->getClientScript();
        $cs->registerScriptFile($baseUrl . '/js/jquery-ui-1.10.2.custom.min.js');
        $cs->registerCssFile($baseUrl . '/css/ui-lightness/jquery-ui-1.10.2.custom.min.css');
    }

    public function actionIndex()
    {
        
    }

    public function actionCreate()
    {

        $model = new Expense;
        $date = strtotime(date('m/d/Y'));

        if (isset($_POST['Expense'])) {
            $model->setAttributes($_POST['Expense']);
            $model->date = strtotime($_POST['Expense']['date']);
            if ($model->validate() && $model->save()) {
                Yii::app()->user->setFlash('success', 'Bạn đã thêm khoản thu chi mới thành công');
            } else {
                Yii::app()->user->setFlash('error', 'Có lỗi xảy ra');
            }
        }

        $this->breadcrumbs = array(
            'Danh mục' => array('/product/expense/list'),
            'Tạo khoản thu chi mới'
        );

        $this->render('_form', array(
            'model' => $model,
            'date' => $date
        ));
    }

    public function actionUpdate()
    {

        $id = Yii::app()->getRequest()->getQuery('id');
        $model = Expense::model()->findByPk($id);
        $date = strtotime(date('m/d/Y'));

        if (isset($_POST['Expense'])) {
            $model->setAttributes($_POST['Expense']);
            $model->date = strtotime($_POST['Expense']['date']);
            if ($model->validate() && $model->save()) {
                //Yii::app()->user->setFlash('success', 'Bạn đã thêm khoản thu chi mới thành công');
                $this->redirect(array('expense/list'));

            } else {
                Yii::app()->user->setFlash('error', 'Có lỗi xảy ra');
            }
        }

        $this->breadcrumbs = array(
            'Danh mục' => array('/product/expense/list'),
            'Tạo khoản thu chi mới'
        );

        $this->render('_form', array(
            'model' => $model,
            'date' => $date
        ));
    }

    public function actionDelete()
    {

        $id = Yii::app()->getRequest()->getQuery('id');
        $model = Expense::model()->findByPk($id);
        $model->delete();
    }

    public function actionList()
    {
        $criteria   = new CDbCriteria();
        $searchForm = new SearchDateRangeForm();

        if (!empty($_POST['SearchDateRangeForm'])) {
            $searchFormData = $_POST['SearchDateRangeForm'];
            $searchForm->setAttributes($searchFormData);
            $data = $searchForm->getAttributes();

            $begin_date = strtotime($data['begin_date']);
            $end_date   = strtotime($data['end_date']);

            if ($begin_date && $end_date) {
                if ($begin_date < $end_date) {
                    $criteria->condition = "date >= " . $begin_date . " AND date <= " . $end_date;
                } else {
                    Yii::app()->user->setFlash('error', 'Ngày bắt đầu phải trước ngày kết thúc');
                }
            } else if ($begin_date && !$end_date) {
                $criteria->condition = "date >= " . $begin_date;
            } else if ($end_date && !$begin_date) {
                $criteria->condition = "date <= " . $end_date;
            }
        }

        $dataProvider = new CActiveDataProvider('Expense', array(
            'criteria' => $criteria
        ));

        $this->render('list', array(
            'dataProvider'  => $dataProvider,
            'form'          => $searchForm
        ));
    }

    //put your code here
    public function filters()
    {
        return array(
            'rights'
        );
    }

}
